[]
dashboard.VisualNS.TupleFilter
TupleFilter 类似于 BasicFilter,但可以处理多维数据。等价SQL:
SELECT * FROM DataTable WHERE ( Team = "DTD1" AND Prod = "Wyn" ) OR ( Team = "DTD2" AND Prod = "SpreadJS" );
↳ TupleFilter
• new TupleFilter(targetProfiles, operator?, values?)
| 名称 | 类型 | 描述 |
|---|---|---|
targetProfiles |
IFieldProfile[] |
数据视图中的 filter 字段。 |
operator? |
BasicFilterOperator |
筛选器操作符。 |
values? |
ITuple[] |
筛选器值。 |
▸ add(tuple): any
增加一个元组。
| 名称 | 类型 |
|---|---|
tuple |
ITuple |
any
▸ contains(tuple): boolean
返回一个 bool 值,判断筛选器值是否包含当前元组值。
| 名称 | 类型 |
|---|---|
tuple |
ITuple |
boolean
▸ createTuple(dp, depth?): ITuple
通过选定的数据点创建一个元组。
| 名称 | 类型 |
|---|---|
dp |
IDataPoint |
depth? |
number |
示例代码
this.items = dv.plain.data.reduce((res, dp) => {
const label = Object.keys(dp).map(key => dp[key]).join('-');
const tuple = filter.createTuple(dp);
res.push({
label,
className: filter.contains(tuple) ? 'selected' : '',
tuple: JSON.stringify(tuple),
});
return res;
}, []);
▸ fromJSON(obj): any
从 updateOptions.filters 获取筛选器值。
| 名称 | 类型 |
|---|---|
obj |
ITupleFilter |
any
▸ getOperator(): BasicFilterOperator
获取操作符。
▸ getValues(): ITuple[]
获取筛选器值。
ITuple[]
▸ isEmpty(): boolean
返回一个 bool 值,判断筛选器值是否是空。
boolean
▸ remove(tuple): any
移除一个元组。
| 名称 | 类型 |
|---|---|
tuple |
ITuple |
any
▸ setOperator(operator): any
设置操作符。
| 名称 | 类型 |
|---|---|
operator |
BasicFilterOperator |
any
▸ setValues(vals): any
设置筛选器值。
| 名称 | 类型 |
|---|---|
vals |
ITuple[] |
any
▸ toJSON(): ITupleFilter
返回一个元组筛选器对象。